From 6cf8d507a60b40c60f3d79dd3b5e590dfd5a55c1 Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Tue, 28 Jul 2009 02:03:50 +0000 Subject: [PATCH] (font_parse_xlfd): Check DPI and AVGWIDTH properties more rigidly. --- src/font.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/font.c b/src/font.c index 6c2311cf236..8292a6e0354 100644 --- a/src/font.c +++ b/src/font.c @@ -1139,7 +1139,10 @@ font_parse_xlfd (name, font) } } - ASET (font, FONT_DPI_INDEX, INTERN_FIELD (XLFD_RESY_INDEX)); + val = INTERN_FIELD (XLFD_RESY_INDEX); + if (! NILP (val) && ! INTEGERP (val)) + return -1; + ASET (font, FONT_DPI_INDEX, val); val = INTERN_FIELD (XLFD_SPACING_INDEX); if (! NILP (val)) { @@ -1151,8 +1154,10 @@ font_parse_xlfd (name, font) p = f[XLFD_AVGWIDTH_INDEX]; if (*p == '~') p++; - ASET (font, FONT_AVGWIDTH_INDEX, - font_intern_prop (p, f[XLFD_REGISTRY_INDEX] - 1 - p, 0)); + val = font_intern_prop (p, f[XLFD_REGISTRY_INDEX] - 1 - p, 0); + if (! NILP (val) && ! INTEGERP (val)) + return -1; + ASET (font, FONT_AVGWIDTH_INDEX, val); } else { -- 2.30.2